package com.rambo.dsd.sys.ws.inter;


import com.rambo.dsd.sys.dao.inter.po.UserPO;

import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import java.util.List;

@WebService
@SOAPBinding(style = SOAPBinding.Style.RPC)
public interface UserWs {

    /**
     * 通过 ID 过去单个 User 实体对象
     * cxf 传输返回对象不可为null,Dao 层获取为null时
     * 实例化返回空对象，判空时使用对象主键进行判断即可
     *
     * @param id 主键ＩＤ
     */
    UserPO getUser(String id);

    /**
     * 通过类似的 PO 获取多个 User 实体对象
     *
     * @param userPO 对照的实体对象
     */
    List<UserPO> listUser(UserPO userPO);

    /**
     * 通过类似的 PO 获取多个 User 实体对象
     *
     * @param userPO  对照的实体对象
     * @param orderby 排序字段
     * @param asc     是否升序
     */
    List<UserPO> listUserOrdrBy(UserPO userPO, String orderby, Boolean asc);

    /**
     * 新增 User 实体对象
     *
     * @param userPO 要新增的对象
     */
    UserPO addUser(UserPO userPO);

    /**
     * 更新 User 实体对象
     *
     * @param userPO 要更新的对象
     */
    UserPO updateUser(UserPO userPO);
}